package com.sline.collection;

import java.util.ArrayList;
import java.util.Collection;

public class Demo4_CollectionAll {
    public static void main(String[] args) {
//        addAll();
//
        removeAll();
//
//        containsAll();
//
//        retainsAll();


    }

    private static void retainsAll() {
        // 取c1和c2的交集
        Collection c1 = new ArrayList();
        c1.add("a");
        c1.add("b");
        c1.add("c");
        c1.add("d");

        Collection c2 = new ArrayList();
        c2.add("a");
        c2.add("b");
        c2.add("z");
        c2.add("1");

        boolean b1 = c1.retainAll(c2);
        System.out.println(b1);
        System.out.println(c1);
    }

    private static void containsAll() {
        // 判断c1是否包含c2中的所有元素
        Collection c1 = new ArrayList();
        c1.add("a");
        c1.add("b");
        c1.add("c");
        c1.add("d");

        Collection c2 = new ArrayList();
        c2.add("a");
        c2.add("b");
        c2.add("d");
        c2.add("b");

        boolean b1 = c1.containsAll(c2);
        System.out.println(b1);
        System.out.println(c1);
    }

    private static void removeAll() {
        // 删除c1和c2的交集
        Collection c1 = new ArrayList();
        c1.add("a");
        c1.add("b");
        c1.add("c");
        c1.add("d");
        c1.add("a");

        Collection c2 = new ArrayList();
        c2.add("a");
        c2.add("b");
        c2.add("1");
        c2.add("z");

        c1.removeAll(c2);
        System.out.println(c1);
    }

    private static void addAll() {
        Collection c1 = new ArrayList();
        c1.add("a");
        c1.add("b");
        c1.add("c");
        c1.add("d");

        Collection c2 = new ArrayList();
        c2.add("a");
        c2.add("b");
        c2.add("c");
        c2.add("d");

        c1.addAll(c2);
        System.out.println(c1);
    }
}
